<template>
  <!--
  cell 单元格的to 属性 和vueRouter 中的RouterLink导航组件的to属性用法是一样的
   :to="'/article/' + article.art_id"
     :to="`/article/${article.art_id}`"
 -->
  <van-cell
    v-if="article"
    class="article-item"
    :to="{
      // 根据路由名称进行跳转
      name: 'article',
      //传递路由动态参数
      params: {
        // 属性名:路由路径中设计的动态参数名称
        articleId: article.articleId,
      },
    }"
  >
    <div slot="title" class="title van-multi-ellipsis--12">
      {{ article.articleTitle || "" }}
    </div>
    <div slot="label">
      <!-- <div v-if="article.cover.type === 3" class="cover-wrap">
        <div class="cover-item" v-for="(img, index) in article.articleCover.images || []"
          :key="index">
          <van-image class="cover-item-img" :src="img" fit="cover" />
        </div>
      </div> -->
      <div class="label-info-wrap">
        <span>{{ article.articlePublisherId }}</span>
        <span>{{ article.comm_count || 0 }}评论</span>
        <span>{{ article.articleCreateDate | relativeTime }}</span>
      </div>
    </div>
    <van-image
      slot="default"
      class="right-cover"
      fit="cover"
      :src="article.articleCover"
    />
  </van-cell>
</template>

<script>
export default {
  name: "ArticleItem",
  components: {},
  props: {
    article: {
      type: Object,
      require: true,
    },
  },
  data() {
    return {};
  },
  computed: {},
  watch: {},
  created() {},
  mounted() {},
  methods: {},
};
</script>

<style lang="less">
.article-item {
  .title {
    font-size: 32px;
    color: #3a3a3a;
  }

  .van-cell__value {
    flex: unset;
    width: 232px;
    height: 146px;
    padding-left: 25px;
  }

  .right-cover {
    width: 232px;
    height: 146px;
  }

  .label-info-wrap span {
    font-size: 22px;
    color: #b4b4b4;
    margin-right: 25px;
  }
  .cover-wrap {
    display: flex;
    padding: 30px 0;
    .cover-item {
      flex: 1;
      height: 146px;
      &:not(:last-child) {
        padding-right: 4px;
      }
      .cover-item-img {
        width: 100%;
        height: 146px;
      }
    }
  }
}
</style>
